A product management system is a computer system configured for the designing, manufacturing, planning, forecasting, and marketing of a product (also identified as an “item”), throughout its lifecycle. A product can be as complex as an aircraft, and can include thousands of components, or the product can be as simple as a shirt. In a product management system, product information includes attributes about the product itself, such as size, dimensions, weight, speed, power, output, fuel consumption estimation, model number, manufacturer information, capabilities, quality information, and safety information, depending on the type of product. Product information can also include attributes such as organization-specific attributes related to the product, supplier attributes, product structure attributes, such as bill of materials attributes, and even user-defined attributes. Product information is generally stored across multiple tables of a database, and are generally tightly coupled to each other based on product key information.
A conventional product management system can also provide for change management, such as making changes to attributes of an existing product after the product has been entered into the product management system. The product management system can impose restrictions that certain types of product attribute changes require approval before they are propagated to the product management system's production data. For example, product attribute changes that are simple and do not impact other aspects of the product, can be directly applied to production data of the product management system. However, product attribute changes that are complex and will directly impact other aspects of the product, such as product design, product production, or product sales can require an approval before they are applied to the production data. In certain conventional product management systems, business rules can be defined for identifying such scenarios. Business rules can be of three types. The first type is assignment rules, which can assign a value to certain attributes based on values of other attributes. The second type is validation rules, which checks if a value of a specific attributes is valid. The condition can be based on other attributes as well. The third type is approval rules, which can identify whether a modification requires approval, and thus, requires a change order.
Generally, if an attribute change requires approval, whether identified by a business rule or through some other mechanism, the product management system can require that a user create a change order which includes the requested attribute change. A change order is an example of a change management system which can allow user to add multiple revised items, where a revised item points to a specific revision or version of the item and can include a scheduled date on which the change is scheduled for. The user can then perform the item changes in the context of these revised items, such as adding, deleting or updating item information or other related information. Once a user has created the change order, the product management system can transmit the change order to appropriate assignees of various phases of a workflow, such as a review phase or an approval phase. The changes do not go directly to the production data of the product management system, and instead, must await appropriate approval. Once the change order is approved by the appropriate assignee, the product management system can process the approved change order and schedule the approved changes. Upon the arrival of the scheduled date, the product management system copies the changes to the production data.